//
//  NSFileManagerAdditions.h
//  Tint
//
//  Created by Kevin Wu on 3/12/12.
//  Copyright (c) 2012 Telligenty. All rights reserved.
//

#import <Foundation/Foundation.h>


@interface NSFileManager (Tint)

/*
 * Shallow enumerate
 */
- (NSArray *)fileNamesInFolder:(NSString *)path;
- (NSArray *)fileRelativePathsInFolder:(NSString *)path;
- (NSArray *)fileAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)directoryNamesInFolder:(NSString *)path;
- (NSArray *)directoryRelativePathsInFolder:(NSString *)path;
- (NSArray *)directoryAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)itemNamesInFolder:(NSString *)path;
- (NSArray *)itemRelativePathsInFolder:(NSString *)path;
- (NSArray *)itemAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)fileNamesMatchingExtension:(NSString *)extension inFolder:(NSString *)path;
- (NSArray *)fileRelativePathsMatchingExtension:(NSString *)extension inFolder:(NSString *)path;
- (NSArray *)fileAbsolutePathsMatchingExtension:(NSString *)extension inFolder:(NSString *)path;

/*
 * Deep enumerate
 */
- (NSArray *)allFileNamesInFolder:(NSString *)path;
- (NSArray *)allFileRelativePathsInFolder:(NSString *)path;
- (NSArray *)allFileAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)allDirectoryNamesInFolder:(NSString *)path;
- (NSArray *)allDirectoryRelativePathsInFolder:(NSString *)path;
- (NSArray *)allDirectoryAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)allItemNamesInFolder:(NSString *)path;
- (NSArray *)allItemRelativePathsInFolder:(NSString *)path;
- (NSArray *)allItemAbsolutePathsInFolder:(NSString *)path;

- (NSArray *)allFileNamesMatchingExtension:(NSString *)extension inFolder:(NSString *)path;
- (NSArray *)allFileRelativePathsMatchingExtension:(NSString *)extension inFolder:(NSString *)path;
- (NSArray *)allFileAbsolutePathsMatchingExtension:(NSString *)extension inFolder:(NSString *)path;

@end


